package com.trade.module.base.entity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;

/**
 * Class Description: 用户实体类
 *
 * @Version v1.0 2017/4/21 20:20
 * @JDK version 1.8.0_51
 * @Author zfb
 */
@Entity
@Table(name = "base_user")
public class User extends BaseEntity implements Serializable{

    private static final long serialVersionUID = 646488242113610003L;

    /**
     *  Field description：用户名
     */
    @Column(
            name = "account",
            nullable = false,
            length = 20
    )
    private String account;

    /**
     * Field description：密码
     */
    @Column(
            name = "pass_word",
            nullable = false,
            length = 64
    )
    private String passWord;

    /**
     * Field description：真实姓名
     */
    @Column(
            name = "real_name",
            nullable = false,
            length = 32
    )
    private String realName;

    /**
     * Field description：昵称
     */
    @Column(
            name = "nickname",
            nullable = false,
            length = 32
    )
    private String nickname;

    /**
     * Field description：用户状态（1：启用；2：禁用；0：状态无效）
     */
    @Column(
            name = "user_flag",
            length = 5
    )
    private String userFlag;


    /**
     * Field description：手机号
     */
    @Column(
            name = "phone_num",
            nullable = false,
            length = 20
    )
    private String phoneNum;

    /**
     * Field description：邮箱地址
     */
    @Column(
            name = "email_address",
            nullable = false,
            length = 32
    )
    private String emailAddress;

    /**
     * Field description：性别
     */
    @Column(
            name = "sex",
            length = 5
    )
    private String sex;

    /**
     * Field description：年龄
     */
    @Column(name = "age")
    private Integer age;

    /**
     * Field description：身份证号
     */
    @Column(
            name = "id_card",
            nullable = false,
            length = 20
    )
    private String idCard;

    /**
     * Field description：申请时间
     */
    @Column(
            name = "apply_time",
            columnDefinition="Timestamp"
    )
    private Date applyTime;

    /**
     * Field description：审核状态
     */
    @Column(
            name = "audit_flag",
            nullable = false,
            length = 5
    )
    private String auditFlag;

    /**
     * Field description：审核人ID
     */
    @Column(
            name = "audit_id",
            nullable = false,
            length = 64
    )
    private String auditId;

    /**
     * Field description：审核时间
     */
    @Column(
            name = "audit_time",
            columnDefinition="Timestamp"
    )
    private  Date auditTime;

    @Column(
            name = "dept_id",
            nullable = false,
            length = 64
    )
    private String deptId;

    public String getAccount() {
        return account;
    }

    public void setAccount(String account) {
        this.account = account;
    }

    public String getPassWord() {
        return passWord;
    }

    public void setPassWord(String passWord) {
        this.passWord = passWord;
    }

    public String getRealName() {
        return realName;
    }

    public void setRealName(String realName) {
        this.realName = realName;
    }

    public String getNickname() {
        return nickname;
    }

    public void setNickname(String nickname) {
        this.nickname = nickname;
    }

    public String getUserFlag() {
        return userFlag;
    }

    public void setUserFlag(String userFlag) {
        this.userFlag = userFlag;
    }

    public String getPhoneNum() {
        return phoneNum;
    }

    public void setPhoneNum(String phoneNum) {
        this.phoneNum = phoneNum;
    }

    public String getEmailAddress() {
        return emailAddress;
    }

    public void setEmailAddress(String emailAddress) {
        this.emailAddress = emailAddress;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public String getIdCard() {
        return idCard;
    }

    public void setIdCard(String idCard) {
        this.idCard = idCard;
    }

    public Date getApplyTime() {
        return applyTime;
    }

    public void setApplyTime(Date applyTime) {
        this.applyTime = applyTime;
    }

    public String getAuditFlag() {
        return auditFlag;
    }

    public void setAuditFlag(String auditFlag) {
        this.auditFlag = auditFlag;
    }

    public String getAuditId() {
        return auditId;
    }

    public void setAuditId(String auditId) {
        this.auditId = auditId;
    }

    public Date getAuditTime() {
        return auditTime;
    }

    public void setAuditTime(Date auditTime) {
        this.auditTime = auditTime;
    }

    public String getDeptId() {
        return deptId;
    }

    public void setDeptId(String deptId) {
        this.deptId = deptId;
    }
}
